package com.hc.programming.string;

import java.util.Scanner;

/**
 * 输入一个字符串，求出该字符串包含的字符集合，按照字母输入的顺序输出。
 * <p>
 * 数据范围：输入的字符串长度满足 1≤n≤100  ，且只包含大小写字母，区分大小写。
 * <p>
 * 本题有多组输入
 * 时间限制：C/C++ 1秒，其他语言2秒
 * 空间限制：C/C++ 32M，其他语言64M
 * 输入描述：
 * 每组数据输入一个字符串，字符串最大长度为100，且只包含字母，不可能为空串，区分大小写。
 * 输出描述：
 * 每组数据一行，按字符串原有的字符顺序，输出字符集合，即重复出现并靠后的字母不输出。
 * <p>
 * 示例1
 * 输入例子： abcqweracb
 * 输出例子： abcqwer
 * 示例2
 * 输入例子： aaa
 * 输出例子： a
 *
 * @author huangchao E-mail:fengquan8866@163.com
 * @version 创建时间：2024/6/25 19:37
 */
public class 字符集合 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) {
            String line = in.nextLine();
            boolean[] upper = new boolean[26];
            boolean[] lower = new boolean[26];
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < line.length(); i++) {
                char c = line.charAt(i);
                int idx;
                boolean[] bs;
                if (c >= 'a') {
                    idx = c - 'a';
                    bs = lower;
                } else {
                    idx = c - 'A';
                    bs = upper;
                }
                if (!bs[idx]) {
                    bs[idx] = true;
                    sb.append(c);
                }
            }
            System.out.println(sb);
        }
    }
}
